#ifndef _HTTP_REQUEST_H_
#define _HTTP_REQUEST_H_

//#include <http/http_connection.hpp>
#include <string>
#include <map>
#include <list>
using namespace std;
class HTTPRequest
{
private:
  int bytes;
  int http_req_type;
  string protocol_version;
  string data_sent;
  string server_name;
  string uri_path;
  bool headers_set;
  map<string, string> headers;  
  void validate_headers(void);
  static const int GET = 1;
  static const int POST = 2;
  
public:
  HTTPRequest();
  //  ~HTTPRequest();
  void get_document(string);
  string get_uri_path();
  void set_header(string, string);
  void set_data(string);
  void set_server(string);
  int get_request_type();
  string get_data();
  string get_server();
  string get_headers();
  string get_version();
  
};
#endif
